#ifndef _SORT_H_
#define _SORT_H_

void bubble(int* V,int size)
{
    int i =-1,aux;
    while (i<size-1)
    {   i++;
        if (V[i]>V[i+1])
        {
            aux = V[i];
            V[i] = V[i+1];
            V[i+1] = aux;
            i=-1;
        }

    }


}

void heapsort(int *a, int n)
{
   int i = n/2, pai, filho;
   int t;

   for (;;)
   {
      if (i > 0)
      {
          i--;
          t = a[i];
      }
      else
      {
          n--;
          if (n == 0)
             return;
          t = a[n];
          a[n] = a[0];
      }

      pai = i;
      filho = i*2 + 1;

      while (filho < n)
      {
          if ((filho + 1 < n)  &&  (a[filho + 1] > a[filho]))
              filho++;
          if (a[filho] > t)
          {
             a[pai] = a[filho];
             pai = filho;
             filho = pai*2 + 1;
          }
          else
             break;
      }
      a[pai] = t;
   }
}

#endif
